Dynamische Netzwerke in R

Eine Einführung

Björn Siepe

AE Psychologische Methodenlehre, Philipps-Universität Marburg

2023-06-23

Ziele

  1. Überblick über relevante Packages
  2. Datenvorverarbeitung
  3. Einführung in graphicalVAR
  4. FAQ zu graphicalVAR
  5. Einführung in GIMME
  6. FAQ zu GIMME
  7. GIMME Beispiel

Was wir auslassen

  1. graphicalVAR im Detail
  2. Coden mit anderen Packages
  3. Viele statistische Details
  4. Einführung in R

Vorbereitung

Materialien für heute

Code Test

x <- rnorm(200)
hist(x)

Vorverarbeitung von Daten

  • DANGER ZONE
  • add funny GIF

Datenformat

Abhängig vom Package

  • graphicalVAR:
  • GIMME:

Fehlende Daten

Abhängig vom Package:

  • graphicalVAR: Akzeptiert keine fehlenden Daten. Imputation vorab, etwa univariat über Kalman-Filter aus (na_kalman aus tsImpute)
data$var1_imp <- imputeTS::na_kalman(data$var1)
  • GIMME: Geht selbst mit fehlenden Daten um (Full Information Maximum Likelihood)

Detrending

  • Verletzung der Stationaritätsannahme (s. Workshop 1) führt zu verzerrten Ergebnissen
  • Detrending bereinigt Zeittrends
  • Oftmals: entfernen eines linearen Zeittrends
  • Funktion dafür im Code-Appendix
data$var1_detrend <- fn_detrend(data$var1)
  • heißt nicht, dass damit alle Probleme gelöst sind!

Zeitintervalle

  • Hoch relevant für die Interpretation Mehrere Möglichkeiten:
  1. Explizite Modellierung über continuous-time Modellierung (ctsem)
  2. Auslassen von Effekten über die Nacht in graphicalVAR
  3. Cubic Spline Interpolation (s. Code) TODO
  4. Ignorieren 😓

Einführung in graphicalVAR

  • graphicalVAR (Espkamp, 2021, TODOADD) ermöglicht idiographische Netzwerkanalysen
  • Theorie: Erklärt im 1. Workshop (Slides)
  • Schätzt temporales und contemporaneous Netzwerk

graphicalVAR-FAQ

Vorab gestellte Fragen: 1. Wichtigkeit von nLambda? 2. Umgang mit EBIC Hyperparameter \(gamma\) 3. Einfluss von Detrending 4. Lags bei graphicalVAR

graphicalVAR-FAQ

  1. Wichtigkeit von nLambda? A:

Einführung in GIMME

  • Group Iterative Multiple Model Estimation
  • ermöglicht blabla

Vergleich mit graphicalVAR

GIMME: Modellschätzung

fit <- gimmeSEM(
  data = NULL,         # Datenfile
  out = NULL,          # Outputordner
  ar = TRUE,           # Autoregressive Effekt schätzen (empfohlen)
  plot = TRUE,         # Plotten?
  subgroup = TRUE      # Subgruppen schätzen?
  
)

## GIMME: Simulationsergebnisse

GIMME: FAQ

  • Stationarität bei GIMME
  • Wie werden gerichtete Effekte im contemporaneous Netzwerk geschätzt? Wie reliabel sind diese?

GIMME: Gruppenergebnis

GIMME: Subgruppenergebnis

GIMME: Individuelles Ergebnis

GIMME: Unsicherheit

GIMME: Limitationen

  • schwer zu treffende/arbiträre Entscheidungen beim Modellieren

Tabsets

…content…

Interessante Anwendungen

  • Vorhersage mit Netzwerken: Hehlmann et al. 

Literatur GIMME

  • Wright, A. G. C., Gates, K. M., Arizmendi, C., Lane, S. T., Woods, W. C., & Edershile, E. A. (2019). Focusing personality assessment on the person: Modeling general, shared, and person specific processes in personality and psychopathology. Psychological Assessment, 31(4), 502–515. https://doi.org/10.1037/pas0000617

Weitere Ressourcen

  • Open Handbook of ESM (KU Leuven, 2022)
  • Intensive Longitudinal Analysis of Human Processes (Gates & Molenaar, 2023)
  • TODO add links here

Kontakt

Feel

free

to

contact

me

bjoern.siepe@uni-marburg.de

TODO HINZUFÜGEN

# knitr::include_graphics(here::here('figures/qr_code_workshop.svg'))

Quarto Infos

https://meghan.rbind.io/blog/quarto-slides/ https://www.emilhvitfeldt.com/post/slidecraft-colors-fonts/